#ifndef TEMPLATE_H_
#define TEMPLATE_H_
/*===========================================================================*/
/**
 * @file template.h
 *
 * @todo Add a one line description of the header file here.
 *
 *------------------------------------------------------------------------------
 *
 * Copyright (C) 2025 XIANZHIGONG. All rights reserved. 
 * XIANZHIGONG Sensitve Business - Restricted XIANZHIGONG information. Do not disclose
 *
 *------------------------------------------------------------------------------
 *
 * @section DESC DESCRIPTION:
 *
 * @todo Add full description here
 *
 * @section ABBR ABBREVIATIONS:
 *   - @todo List any abbreviations, precede each with a dash ('-').
 *
 * @section TRACE TRACEABILITY INFO:
 *   - Design Document(s):
 *     - @todo Update list of design document(s).
 *
 * Add Polarion Work Item Link to the intended line (if using Resource Link  
 * for traceability)
 * Syntax: 
 * @wi.<LinkRoleAsSingleWord> <PolarionProjectID>/<workitemID>
 * example:
 * @wi.implemented PDP2.0_playground/WI-5001
 *
 *   - Requirements Document(s):
 *     - @todo Update list of requirements document(s)
 *
 *   - Applicable Standards (in order of precedence: highest first):
 *     - ESGW_4-2_PE-SWx_00-01-A02_EN - C Coding Standards [20120506]
 *     - @todo Update list of other applicable standards
 *
 * @section DFS DEVIATIONS FROM STANDARDS:
 *   - @todo List of deviations from standards in this file, or "None".
 *
 * @ updates to areas outside the scope of procedures:
 *   - Refer to module footer comment block.
 *
 * @defgroup template Provide API description and define/delete next line
 * @ingroup <parent_API> (OPTIONAL USE if part of another API, else delete)
 * @{
 */
/*==========================================================================*/

/*===========================================================================*
 * Standard Header Files
 *===========================================================================*/
/* Header files that are common across an entire program or project and ANSI C standard library header files. */
/* Headers should be Self-contained */
#include "example_std_data_types.h"

/*===========================================================================*
 * Other Header Files
 *===========================================================================*/
/* Header files that are required by a particular file (all header files that are not "standard header files"). */
#if 0
#include "example_feature.h"
#endif /* #if 0 */

#ifdef __cplusplus
extern "C" {	/* ! Inclusion of header files should NOT be inside the extern "C" block */
#endif	/* __cplusplus */

/*===========================================================================*
 * Exported Preprocessor #define Constants
 *===========================================================================*/
/* Exported preprocessor #define constants (object-like macros) */
#if 0
#define EXAMPLE_MY_AGE ((uint8_t)30)
#define MAX_POINTS	2
#endif /* #if 0 */

/*===========================================================================*
 * Exported Preprocessor #define MACROS
 *===========================================================================*/
/* Exported preprocessor #define macros (i.e., those using # or ## operator) */
#if 0
#define EXAMPLE_MAKE_STRING(x) #x
#endif /* #if 0 */

/*===========================================================================*
 * Exported Type Declarations
 *===========================================================================*/
/* Exported type declarations (enum, struct, union, typedef) */
#if 0

typedef uint16_t Example_Vehicle_Weight_T;

typedef struct Point_2D_Tag
{
   uint8_t x;
   uint8_t y;
}
Point_2D_T;

typedef enum Direction_Tag
{
   NORTH,
   SOUTH,
   EAST,
   WEST
}
Direction_T;

#endif /* #if 0 */

/*===========================================================================*
 * Exported Object Declarations
 *===========================================================================*/
/* Exported object declarations */
#if 0
extern uint8_t Example_My_Global_Variable;
extern Example_Vehicle_Weight_T My_Veh_Weight;
extern Point_2D_T My_Points[MAX_POINTS];
extern Direction_T My_Direction;
#endif /* #if 0 */

/*===========================================================================*
 * Exported Function Prototypes
 *===========================================================================*/
#if 0
extern void Example_My_External_Function(void);
#endif /* #if 0 */

/*===========================================================================*
 * Exported Inline Function Definitions and #define Function-Like Macros
 *===========================================================================*/
/* Inline Function Definitions */
/* Encapsulate access to Global_Value with Inline_Function */
#if 0
INLINE uint8_t Example_Inline_Function(void)
{
   return (Global_Value);
}
#endif /* #if 0 */

#if 0
/* Function-Like Macros */
#define Example_Tripple(x) (3 * (x))
#endif /* #if 0 */


#ifdef __cplusplus
}	/* extern "C" */
#endif	/* __cplusplus */


#endif /* TEMPLATE_H_ */

/*============================================================================*\
 * AUTHOR(S) IDENTITY (AID)                                                     
 *-----------------------------------------------------------------------------  
 *                                     
 *  AID         NAME                 User ID
 *  ---------------------------------------------------------------------------
 *  XXX         Firstname Lastname   njp4bz
 *  XG          Xianzhi Gong         njp4bz
 *  HL          Herbert Langley                        
\*============================================================================*/

/*============================================================================*\
 * FILE REVISION HISTORY - To be filled by the project team                                               
 *-----------------------------------------------------------------------------  
 *                                     
 *  DATE               REVISION    AID          JIRA Ticket ID/SUMMARY OF CHANGES                                 
 *  ---------------------------------------------------------------------------
 *  May 28, 2025       1.00        XXX          12345 First revision        
 *                                           
 *  ---------------------------------------------------------------------------
\*============================================================================*/

/* END OF FILE -------------------------------------------------------------- */
